home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / keyb / keyswp12.zip / KEYSWAP.DOC < prev    next >
Text File  |  1988-03-11  |  61KB  |  1,431 lines

  1.      
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.                                  K E Y S W A P 
  26.                        A Keyboard Enhancer for the IBM-PC
  27.                                   Version 1.2
  28.  
  29.                                       and
  30.  
  31.                                   K E Y D E F 
  32.                        A Screen-Oriented Keyboard Definer
  33.                                   Version 1.0
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.                         Summer Institute of Linguistics
  47.                         International Computer Services
  48.                              Box 248, JAARS Center
  49.                                    Waxhaw,NC
  50.  
  51.  
  52.                          Copyright (c) 1988, SIL, Inc.
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.      
  66.      
  67.  
  68.  
  69.  
  70.                        T a b l e   o f   C o n t e n t s 
  71.      
  72.  
  73.                                Keyboard Enhancer
  74.      
  75.  
  76.  
  77.      1.  KEYSWAP: Keyboard Enhancer
  78.        1.1  Introduction
  79.        1.2  Functional Description
  80.        1.3  Compatibility of KEYSWAP with Other Programs
  81.        1.4  How to Install KEYSWAP
  82.        1.5  How to Use the Hot Keys
  83.          1.5.1  Changing Between Keyboards
  84.          1.5.2  Changing to Keyboard 0
  85.          1.5.3  Temporarily Suppressing Key Translation
  86.        1.6  Command Line Options
  87.          1.6.1  -D Option
  88.          1.6.2  -K Option
  89.            1.6.2.1  Using -K on a Previously Loaded Table
  90.            1.6.2.2  Using -K When Loading a New Table
  91.          1.6.3  Getting Usage Message
  92.          1.6.4  Getting Status Information
  93.        1.7  Changes from Previous Versions
  94.  
  95.      2.  KEYDEF: Keyboard Table Definer
  96.        2.1  How to Invoke KEYDEF
  97.        2.2  The KEYDEF Editing Screen
  98.        2.3  Editing Keyboard Entries
  99.          2.3.1  Cursor Movements
  100.          2.3.2  Inserting/Deleting Keystrokes
  101.          2.3.3  The Escape Key
  102.          2.3.4  Inserting Extended Characters
  103.        2.4  Using the Function Keys
  104.          2.4.1  The Regular (unshifted) Function Keys
  105.          2.4.2  The Shifted Function Keys
  106.        2.5  Miscellaneous Tips and Cautions
  107.        2.6  Changes from Previous Versions
  108.  
  109.      Appendix A.  KEYSWAP MESSAGES
  110.        A.1  Error Messages
  111.        A.2  Informational Messages
  112.  
  113.      Appendix B.  MNEMONICS USED BY KEYDEF
  114.        B.1  Mnemonics for ASCII control characters
  115.        B.2  Mnemonics for Function Keys (F1 - F10)
  116.        B.3  Mnemonics for ALT keys
  117.        B.4  Mnemonics for Keypad keys
  118.        B.5  Mnemonics for Extended Characters
  119.        B.6  Miscellaneous mnemonics
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.      KEYSWAP.DOC 07-Mar-88                                                 
  131.      
  132.  
  133.  
  134.  
  135.                                    Chapter 1
  136.  
  137.               K E Y S W A P :   K e y b o a r d   E n h a n c e r 
  138.  
  139.  
  140.  
  141.      1.1  Introduction
  142.  
  143.         The Keyboard Enhancer (called KEYSWAP) is a program  for  providing
  144.      flexible   re-definition   of  a  user's  keystrokes  according  to  a
  145.      memory-resident table of  translations.   Any  one-  or  two-character
  146.      sequence  can  be  translated  into any other sequence of zero or more
  147.      characters.  This allows "custom" keyboards to be designed to fit  the
  148.      user's needs and preferences.  Up to 9 independent keyboards (numbered
  149.      1 through 9) can be defined in this manner.  A tenth keyboard  (called
  150.      keyboard 0)  is a non-definable keyboard in which no translations take
  151.      place  (i.e.,  all  keystrokes  pass  through  unchanged).   A  simple
  152.      keystroke sequence allows the user to switch quickly between these ten
  153.      keyboards.
  154.  
  155.         The primary motivation for developing this enhancer was to  provide
  156.      convenient  access  to  the IBM's extended characters (character codes
  157.      128 through  255).   For  example,  the  two-character  sequence  "'e"
  158.      (apostrophe  followed by "e") could be defined to produce the code 130
  159.      (which is the code for the acute-accented  "e"  in  the  standard  IBM
  160.      extended character set).  This would eliminate the need for typing the
  161.      clumsy "ALT-1-3-0" sequence to access the accented-e.  
  162.  
  163.  
  164.      1.2  Functional Description
  165.  
  166.         The keyboard enhancer functions as a memory-resident filter between
  167.      the  user  and  the  application  program.   It  monitors  the  user's
  168.      keystrokes looking for  any  one-  or  two-character  match  sequences
  169.      defined for the current keyboard.  When a match sequence is found, the
  170.      match  sequence  is  replaced  by  its   corresponding   sequence   of
  171.      characters.  Non-matched keystrokes simply pass through unchanged.
  172.  
  173.         KEYSWAP works by intercepting the user's keystrokes at the ROM-BIOS
  174.      interrupt  level  (interrupt  16H).   In  this  way,  the   enhancer's
  175.      activities  are  transparent to any well-behaved application programs.
  176.      The potential does exist, however, for conflicts between  KEYSWAP  and
  177.      other  memory  resident  programs  --  especially  those which perform
  178.      keyboard mapping of their own.  
  179.  
  180.  
  181.      1.3  Compatibility of KEYSWAP with Other Programs
  182.  
  183.         Testing thus  far  indicates  that  the  enhancer  runs  under  ED,
  184.      PC-WRITE,  WordStar,  and  several  other  editors  with  no problems.
  185.      KEYSWAP also works with MicroSoft WORD (at least  with  versions  3.10
  186.      and  4.0 of WORD), but there was a reported problem with using a mouse
  187.      with  WORD  while  the  old  version  of  KEYSWAP  (version  1.1)  was
  188.      installed.   To  the best of our knowledge, the new version of KEYSWAP
  189.      (version 1.2) fixes this problem.
  190.  
  191.         KEYSWAP has also been tried in conjunction with  SideKick,  and  it
  192.      appeared  to  have  no  conflicts as long as SideKick was loaded after
  193.  
  194.  
  195.      KEYSWAP.DOC 07-Mar-88                                                1
  196.      Compatibility of KEYSWAP with Other Programs               KEYSWAP 1.3
  197.  
  198.  
  199.  
  200.      KEYSWAP.  It should also be noted that SideKick needs  to  be  toggled
  201.      into  showing  graphics  (by typing CTRL-Q followed by "G") before any
  202.      keys which are mapped to upper ASCII values will display as intended.
  203.  
  204.         The enhancer will NOT run under XyWrite as yet.  Further testing is
  205.      required  to  discover  if the enhancer has any undesired interactions
  206.      with other application programs.  
  207.  
  208.  
  209.      1.4  How to Install KEYSWAP
  210.  
  211.         The keyboard enhancer is invoked from the DOS prompt as follows: 
  212.           
  213.           A>KEYSWAP [-Kn] filename
  214.           
  215.               where '[-Kn]' denotes a -K command line option (See
  216.               "Command Line Options" below), and 'filename' is the
  217.               complete name of the keyboard table which is to be loaded.
  218.               NOTE: KEYSWAP does not assume any default filename
  219.               extension, so the extension should be explicitly given.
  220.  
  221.         The above command installs KEYSWAP  in  memory  and  loads  in  the
  222.      specified keyboard table.
  223.  
  224.         The   keyboard   table  is  a  file  which  defines  the  keystroke
  225.      translations which are to be done for all 9 of the  custom  keyboards.
  226.      It also defines the two "hot keys" which KEYSWAP will recognize.  (The
  227.      function of these hot keys is described  in  a  later  section.)   The
  228.      keyboard  table  must  be  in a form which is recognizable to KEYSWAP.
  229.      See the section  entitled  "KEYDEF:  Keyboard  Table  Definer"  for  a
  230.      description of how a custom keyboard table may be produced.
  231.  
  232.         As  an  example,  one  could load the sample keyboard table (called
  233.      SAMPLE.KBD) using the following command: 
  234.           
  235.           A>KEYSWAP SAMPLE.KBD
  236.           
  237.               and KEYSWAP would respond with
  238.           
  239.           KEYSWAP Version 1.2, March 1988,  Copyright (c) SIL 1988
  240.           Keyboard table has been successfully loaded from file "SAMPLE.KBD"
  241.           Keyboard #0 is now active.
  242.           Resident portion of KEYSWAP is now installed.
  243.  
  244.         A different message  would  indicate  that  KEYSWAP  encountered  a
  245.      problem  while  trying to load the keyboard table.  See Appendix A for
  246.      the explanations of possible error messages.
  247.  
  248.